package v1

type AssetsInCSV struct {
	IP                      string `csv:"IP",json:"ip"`
	Port                    string `csv:"端口,json:"port""`
	Country                 string `csv:"国家",json:"country"`
	Province                string `csv:"省份",json:"province"`
	City                    string `csv:"市区",json:"city"`
	Region                  string `csv:"区域",json:"region"`
	EnsureProvince          string `csv:"-",json:"ensure_province"`
	EnsureCity              string `csv:"-",json:"ensure_city"`
	EnsureRegion            string `csv:"-",json:"ensure_region"`
	Domain                  string `csv:"域名",json:"domain"`
	Protocol                string `csv:"协议",json:"protocol"`
	OperationSystem         string `csv:"操作系统",json:"operation_system"`
	OperationSystemType     string `csv:"操作系统类型",json:"operation_system_type"`
	Device                  string `csv:"设备",json:"device"`
	ApplicationService      string `csv:"应用服务",json:"application_service"`
	ApplicationType         string `csv:"应用类型",json:"application_type"`
	SiteTitle               string `csv:"网站标题",json:"site_title"`
	SiteServer              string `csv:"网站服务器",json:"site_server"`
	SiteServerVersion       string `csv:"网站服务器版本",json:"site_server_version"`
	SiteDevLang             string `csv:"网站开发语言",json:"site_dev_lang"`
	SiteDevFramework        string `csv:"网站开发框架",json:"site_dev_framework"`
	SiteDevFrameworkVersion string `csv:"网站开发框架版本",json:"site_dev_framework_version"`
	PageFramework           string `csv:"页面框架",json:"page_framework"`
	PageFrameworkVersion    string `csv:"页面框架版本",json:"page_framework_version"`
	RecordingUnit           string `csv:"备案单位",json:"recording_unit"`
	EnsureRecordingUnit     string `csv:"-",json:"ensure_recording_unit"`
	RecordingNumber         string `csv:"备案号",json:"recording_number"`
	Industry                string `csv:"行业",json:"industry"`
	EnsureIndustry          string `csv:"-",json:"ensure_industry"`
	UpdateTime              string `csv:"更新时间",json:"update_time"`
}

type AssetsByIPs struct {
	Domain          string `json:"domain"`
	IPs             string `json:"ips"`
	RecordingNumber string `json:"recording_number"`
	RecordingUnit   string `json:"recording_unit"`
}

type WeakInCSV struct { // Our example struct, you can use "-" to ignore a field
	IP            string `csv:"IP"`
	Port          string `csv:"端口"`
	VulnName      string `csv:"漏洞名称"`
	ThreatenLevel string `csv:"威胁等级"`
	ThreatenType  string `csv:"威胁类型"`
	UsedType      string `csv:"利用类型"`
	VulnDesc      string `csv:"漏洞描述"`
	CVEID         string `csv:"CVE_ID"`
	CNNVDID       string `csv:"CNNVD_ID"`
	UpdateTime    string `csv:"更新时间"`
}

type WeakForIPPort struct {
	VulnName      string `json:"vuln_name"`
	ThreatenLevel string `json:"threaten_level"`
	ThreatenType  string `json:"threaten_type"`
	UsedType      string `json:"used_type"`
	VulnDesc      string `json:"vuln_desc"`
	CVEID         string `json:"cve_id"`
	CNNVDID       string `json:"cnnvd_id"`
	UpdateTime    string `json:"update_time"`
}

type IPPortInfo struct {
	IP   string
	Port string
}
